Field of the Invention
Embodiments of the present invention relate generally to wireless network communications and, more specifically, to a time distribution scheme for wireless mesh networks.
Description of the Related Art
A conventional wireless mesh network includes a plurality of nodes configured to communicate with one another. In certain types of heterogeneous wireless mesh networks, both continuously-powered nodes (CPDs) and battery-powered nodes (BPDs) reside within the mesh network and communicate with one another.
In many instances, CPDs are coupled to a power grid and have continuous access to power (except during power outages). CPDs typically reside in a subdomain of the overarching mesh network referred to as the “CPD mesh.” BPDs, on the other hand, are battery-powered and therefore have only a finite supply of power. BPDs reside in a different subdomain of the overarching mesh network referred to as the “BPD mesh.” In operation, the CPDs and BPDs may implement substantially the same communication protocol. In such cases, the nodes within one subdomain of the wireless network communicate in a manner that is consistent with how nodes in the other subdomain of the wireless network communicate.
When CPDs are coupled to the power grid, the CPDs can be configured to remain powered on for long intervals of time. During those intervals, a given CPD may continuously perform transmit and receive operations. Conversely, because BPDs have only a limited supply of battery power, the BPDs are usually configured to remain powered off for long intervals of time. For example, a given BPD may power on during a scheduled communication window, transmit and/or receive data, and then return to a powered off state. In practice, a BPD mesh may remain powered off 97% percent of the time in order to conserve power.
With respect to coordinating communications with one another, the BPDs include a clock circuit that maintains an estimate of the current time. However, conventional BPDs oftentimes cannot maintain an accurate estimate of time due to power limitations. In particular, BPDs typically lack sufficient power to support clock correction hardware, such as temperature-controlled oscillators. Consequently, the clock of a conventional BPD may be subject to significant clock drift, which can prevent the BPD from accurately predicting when a communication window is to occur. If a given BPD is not active during a particular communication window, then that BPD cannot communicate with other BPDs active during the communication window. In such a situation, the BPD may become separated from the mesh network.
One solution to the above problem is to source time updates into the BPD mesh from the CPD mesh. In many implementations, for example, the CPD mesh may be coupled to a source of accurate time, such as a NTP server. With this approach, the CPD mesh can provide the BPD mesh with periodic time updates. In practice, the CPD mesh transmits a time beacon to edge nodes in the BPD mesh, and those nodes along with the intermediate nodes in the BPD mesh then propagate the time beacon across the BPD mesh. One problem with this approach, however, is that with larger BPD meshes the accuracy of the time beacon can degrade significantly as the time beacon traverses the BPD mesh. Consequently, BPDs at the fringes of the BPD mesh can end up with inaccurate estimates of time, which can cause those nodes to miss communication windows. In such cases, those portions of the wireless mesh network can lose connectivity and cease to operate normally.
As the foregoing illustrates, what is needed in the art are more effective approaches for coordinating communications across battery-powered devices in wireless mesh networks.